package com.daJiao.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.daJiao.domain.PageParam;
import com.daJiao.domain.SecurityUser;
import com.daJiao.domain.SecurityUserDetails;
import com.daJiao.domain.UserBindRole;
import com.daJiao.entity.SysUser;

import java.util.List;

public interface SysUserService extends IService<SysUser> {

    int saveUser(SysUser user, SecurityUserDetails securityUser);

    int delete(String id, SecurityUserDetails securityUser);

    Page<SysUser> listPage(PageParam<SysUser> param);

    SysUser loadUserByUsername(String userName);

    int updateUserInfo(SysUser user);

    void userBindRole(UserBindRole userBindRole, SecurityUserDetails securityUser);

    List<String> getBindRoleByUserId(String userId);

    SecurityUser getCurrentUser(SecurityUserDetails securityUser);
}
